package com.opcode.nebulamobil.information.dataforms.costadataforms;

import com.opcode.nebulamobil.information.dataforms.DataForm;


/**
 * Sunucuyla kurulan bağlantı ile ilgili veri tutan bir sınıftır.
 * Bu sınıfın nesnesinden bağlantı durumu ile ilgili bütün bilgileri elde edebiliriz.
 * @author Okan ERDOĞAN
 *
 * 9 Eyl 2014
 */
public class ConnectionStatus extends DataForm{

	private static final long serialVersionUID = 1L;
	
	/*
	 * Bu enum sayesinde bağlantının kurulup kurulmadığını, bağlantı kurulamamışsa bunun nedenlerini kolaylıkla öğrenebiliriz.
	 */
	public enum ConnectionStatusInfo{CONNECTION_LOST,CONNECTED,SERVER_NOT_FOUND}
	
	/*
	 * Bağlantının durumu ile ilgili mesaj içeren bir değişkendir.
	 */
	private String connectionInfoMessage;
	
	/*
	 * Sunucuyla kurulan en son bağlantı zamanını içinde tutan bir değişkendir.
	 */
	private int lastConnectedTime;
	
	/*
	 * Bu değişken sayesinde bağlantı durumu ile ilgili bilgileri elde ederiz.
	 * Bağlantı durumunda bir değişim elde edildiğinde bağlantı service'i bu değişkene gerekli değeri atar.
	 * Atanacak olan bu değerler ConnectionStatusInfo enum'ı ile sabitlenenen durumlardan bir tanesi olacaktır.
	 */
	private ConnectionStatusInfo ConnectionStatusInfo;
	
	public String getConnectionInfoMessage() {
		return connectionInfoMessage;
	}
	public void setConnectionInfoMessage(String connectionInfoMessage) {
		this.connectionInfoMessage = connectionInfoMessage;
	}
	public int getLastConnectedTime() {
		return lastConnectedTime;
	}
	public void setLastConnectedTime(int lastConnectedTime) {
		this.lastConnectedTime = lastConnectedTime;
	}
	public ConnectionStatusInfo getConnectionStatusInfo() {
		return ConnectionStatusInfo;
	}
	public void setConnectionStatusInfo(ConnectionStatusInfo connectionStatusInfo) {
		ConnectionStatusInfo = connectionStatusInfo;
	}
}
